-
-
Notifications
You must be signed in to change notification settings - Fork 2.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: Fix interop with cjs-module-lexer #2377
base: master
Are you sure you want to change the base?
Conversation
90ff143
to
951c722
Compare
951c722
to
23c58ad
Compare
Well I got pretty far just with this small change, but now I can't figure out how to get the AMD test to pass… any pointers there? |
I also tried without adding a file to re-export from + just copy pasting all of the exports in the default export as named exports, but that has the same issue (seemingly) breaking AMD. |
When building babel does give a warning;
That's also what seems to be changed in the built files. Apart from the expected additional exports it also returned validator before but now that's part of |
No problem. Thanks anyway! Yeah that's what I discovered as well. I did all kinds of inspection there and couldn't figure out a different way to get to the original module object shape it was expecting before :( |
Might just be a Babel thing. I know there is an outdated PR from one of the maintainers that tried to overhaul the config (also because we're on old versions of Babel and Rollup); #1869 Maybe a smaller version of that is the way to go, but merging PRs is often quite slow with the current maintainers, see #2376 |
It could be, but in my local build, I tried with the latest version of Babel 8, which didn't change anything. |
I'll take a look at this while on my dev machine. But this is not a disruptive change like what I've seen in the past. Happy to see this land once all t's are crossed. |
@profnandaa any chance you'll have time to look soon? |
This moves the main validator exports to validator-main.js (avoid conflict with top-level validator.js when running build), which then allows both a default and named exports in the index by re-exporting. By doing this, we get a CJS validator that also can be name-imported in node ESM.
Checklist